florian-t.deVerzeichnisse schützen [Update] - florian-t.de

Verzeichnisse schützen [Update]

Immer wieder kommt es vor, dass man bestimmte Bereiche oder Verzeichnisse seiner Website nicht für die ganze Welt zugänglich machen will. Eine einfache Methode um Websites mit einem Login zu sichern ist, das entsprechende Verzeichnis mit einer sogenannten .htaccess Datei zu schützen (wenn auf dem Webserver Apache läuft).

Dafür erstellt man sich einfach mit einem beliebigen Generator (z.B. mit HTAGenie, htaccess-generator (en) oder htpasswd Generator) die beiden Dateien „.htaccess“ und „.htpasswd“ und läd sie in den zu schützenden Ordner hoch (der Punkt vor den Dateinamen kennzeichnet unter Linux übrigens versteckte Dateien).

In der Datei .htaccess steht dann etwa folgendes:
AuthUserFile /var/www/.htpasswd
AuthName "Password Protected Area"
AuthType Basic
<limit GET POST>
require valid-user
</limit>

Wobei AuthUserFile der Pfad zur Datei mit den Usernamen/Passwörtern ist (Script zum Ermitteln des Basepaths siehe unten)

Und die Datei .htpasswd hat folgenden Inhalt (für den Benutzer test mit dem Passwort test):
test:teH0wLIpW0gyQ
Ein weiterer Benutzer wird in eine neue Zeile geschrieben. Das Passwort wird übrigens mit der php-Funktion crypt() verschlüsselt, was der oben genannte, letzte Link auf einfache Weise ermöglicht)

Die Dateien bewirken dann, dass jeder, der auf den Ordner in dem sie liegen, zugreifen will, einen Benutzernamen und ein Passwort (welche in der Datei „.htpasswd“ festgelegt sind) eingeben muss.

Es wird außerdem noch der absolute Pfad des zu schützenden Ordners gebraucht. Diesen sogennanten Basepath kann man einfach mit folgendem Script ermitteln, indem man es in den zu schützenden Ordner läd: Basepath ermitteln

[Update]: Artikel überarbeitet